// 使用mongoose  操作 mongodb
// 1. 引入mongoose
const mongoose = require('mongoose')

// 2. 连接数据库
mongoose.connect('mongodb://127.0.0.1:27017/book-curd')

// 3.绑定连接成功的监听
mongoose.connection.on('open', () => {
  console.log('连接数据库成功');

  // 4. 定义文档结构
  const bookSchema = mongoose.Schema({
    name: String,
    author: String,
    price: Number
  })

  // 5. 定义文档结构
  const BookModel = mongoose.model('books', bookSchema)

  // 6.添加文档  添加单个
  // BookModel.create({
  //   name: '活着',
  //   author: '余华',
  //   price: 34
  // }, (error, data) => {
  //   if (error) {
  //     // 如果失败了, 输出错误信息
  //     console.log('----', error.message);
  //   } else {
  //     // 如果成功, 输出返回数据 (产生的文档)
  //     console.log(data);
  //   }

  //   // 关闭连接 (选做)
  //   mongoose.connection.close()
  // })

  //  6. 批量添加/添加多个
  BookModel.insertMany([
    {
      name: '红楼梦',
      author: '曹雪芹',
      price: 26.8
    },
    {
      name: '三国演义',
      author: '罗贯中',
      price: 35.6
    },
    {
      name: '水浒传',
      author: '施耐庵',
      price: 38.8
    },
  ], (error, data) => {
    if (error) { // 如果失败了, 输出错误信息
      console.log('----', error.message)
    } else { // 如果成功, 输出返回数据 (产生的文档)
      console.log(data)
    }
    // 关闭连接 (选做)
    mongoose.connection.close()
  })

})

// 绑定连接失败的监听
mongoose.connection.on('error', () => {

  console.log('连接数据库失败!')
})


